<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>

<body>
    <script>
        function say(str) {
            // 相当于在函数内部
            // var str;
            alert(str);
        }
        // 想实现 调用时  弹出不同的话?
        // 需要使用到函数的参数

        // 这里边  str  称之为形参   占位用 . 在没有调用之前 不知道他的值是什么(undefined)

        // '天气很好'  称之为 实参 , 调用时 会把实参的值 赋值给 形参变量

        // 实际参数和形式参数的个数，要相同。(通常来讲)
        // 多个形参之间使用,隔开，声明形参就相当于在函数内部声明了对应的变量，但是并不赋值。
        say();

        function add(a, b) {
            console.log(a + b);
        }
        add(1, 3);
        // 实参个数 小于形参个数
        add(1); // NaN

        // 实参个数 大于  形参个数
        // 多出来的实参 不管
        add(1, 2, 3); // 3
    </script>
</body>

</html>